---
id: 6565a536ba1f9f25bd30e88b
title: Step 1
challengeType: 20
dashedName: step-1
---

# --description--

In this project, you will implement the Luhn Algorithm. This algorithm is a formula to validate a variety of identification numbers.

<!-- TODO: Maybe cover `if __name__ == '__main__'` -->
<!-- Might not make sense, because import is not covered yet -->
<!-- https://docs.python.org/3/reference/import.html?highlight=__name__#import-related-module-attributes -->

Start by declaring a function called `main`. Use the `pass` keyword to avoid an error.

# --hints--

You should have `def main():` in your code.

```js
({
    test: () => {
        assert(__pyodide.runPython(`
        import inspect
        a = __locals.get("main")
        inspect.isfunction(a)
        `))
    }
})
```

You should have `pass` in your code.

```js
({
    test: () => {
        const transformedCode = code.replace(/\r/g, "");
        const pass = __helpers.python.getDef("\n"+transformedCode, "main");
        assert.include(pass?.function_body, "pass");
    }
})
```

# --seed--

## --seed-contents--

```python
--fcc-editable-region--

--fcc-editable-region--
```
